From 3e500e67eba43c1a59313a3835502ad58b11166b Mon Sep 17 00:00:00 2001 From: "emellor@ewan" Date: Wed, 12 Oct 2005 13:13:32 +0100 Subject: [PATCH] Make the error reporting back to xm just a little bit less insane, and fix a missing import inside blkif. Fix the command parsing for op_device_destroy and op_device_configure -- the device IDs should be strings, to allow the user to specify devices by name as well as number. This is the second half to the fixes for bug #315. Signed-off-by: Ewan Mellor --- tools/python/xen/web/SrvBase.py | 2 +- tools/python/xen/xend/server/SrvDomain.py | 4 ++-- tools/python/xen/xend/server/blkif.py | 1 + tools/python/xen/xm/main.py | 6 ++---- 4 files changed, 6 insertions(+), 7 deletions(-) diff --git a/tools/python/xen/web/SrvBase.py b/tools/python/xen/web/SrvBase.py index 11b1d48f24..59eb313b3e 100644 --- a/tools/python/xen/web/SrvBase.py +++ b/tools/python/xen/web/SrvBase.py @@ -86,7 +86,7 @@ class SrvBase(resource.Resource): except Exception, exn: log.exception("Request %s failed.", op) if req.useSxp(): - return ['xend.err', "Exception: " + str(exn)] + return ['xend.err', str(exn)] else: return "

%s

" % str(exn) diff --git a/tools/python/xen/xend/server/SrvDomain.py b/tools/python/xen/xend/server/SrvDomain.py index a5c5dbfee7..535d9323f4 100644 --- a/tools/python/xen/xend/server/SrvDomain.py +++ b/tools/python/xen/xend/server/SrvDomain.py @@ -146,13 +146,13 @@ class SrvDomain(SrvDir): def op_device_destroy(self, op, req): return self.call(self.dom.destroyDevice, [['type', 'str'], - ['dev', 'int']], + ['dev', 'str']], req) def op_device_configure(self, op, req): return self.call(self.dom.device_configure, [['config', 'sxpr'], - ['dev', 'int']], + ['dev', 'str']], req) diff --git a/tools/python/xen/xend/server/blkif.py b/tools/python/xen/xend/server/blkif.py index a15edf0963..d60607f0f4 100644 --- a/tools/python/xen/xend/server/blkif.py +++ b/tools/python/xen/xend/server/blkif.py @@ -22,6 +22,7 @@ import string from xen.util import blkif from xen.xend import sxp +from xen.xend.XendError import VmError from xen.xend.server.DevController import DevController diff --git a/tools/python/xen/xm/main.py b/tools/python/xen/xm/main.py index 11e2ff7194..54d72195bc 100644 --- a/tools/python/xen/xm/main.py +++ b/tools/python/xen/xm/main.py @@ -169,11 +169,9 @@ def handle_xend_error(cmd, dom, ex): if error == "Not found" and dom != None: err("Domain '%s' not found when running 'xm %s'" % (dom, cmd)) sys.exit(1) - elif error == "Exception: Device not connected": - err("Device not connected") - sys.exit(1) else: - raise ex + err(error) + sys.exit(1) ######################################################################### -- 2.30.2